package com.allwees.core.mongo;

import java.util.List;

/**
 * mongo 基础操作基础接口
 * @author jy2016
 *
 * @param <T>
 */
public interface MongoBaseDao<T> {

	List<T> getAllObjects();

	/**
	 * 对单个对象保存
	 * @param object
	 * @return 成功条数   -1即为失败
	 *
	 */
    int saveObject(T object);

    int saveObjectList(List<T> list);

    T findById(String id);

    List<T> getOnes(List<String> ids);

    void deleteAndSave(String id, T object);

    /**
     * @param id
     * @return -1 删除失败
     */
    int deleteObject(String id);

    int deleteObjectByIds(List<String> list);

    void update(T object);

    boolean exists(String id);

    long count();
}